package com.chart.chart.domian.resp;

import com.chart.common.annotation.Excel;
import com.chart.common.annotation.Excel.Type;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;

/**
 * 用户对象 sys_user
 *
 * @author chart
 */
@Data
public class UserResp {

    /**
     * 用户Id
     */
//    @Excel(name = "登录名称")
    private Long userId;

    /**
     * 用户账号
     */
    @Excel(name = "登录名称")
    private String userName;

    /**
     * 用户昵称
     */
    @Excel(name = "用户名称")
    private String nickName;

    /**
     * 手机号码
     */
    @Excel(name = "手机号码")
    private String phonenumber;

    /**
     * vip   0:普通用户 1：vip
     */
    @Excel(name = "vip", readConverterExp = "0=否,1=是")
    private Integer isVip;

    /**
     * vip过期时间
     */
    @Excel(name = "vip过期时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime expirationTime;


    /**
     * 1 表示已支付，0 表示未支付。
     */
    @Excel(name = "付费用户", readConverterExp = "0=否,1=是")
    private Integer hasPaid;


    private String hasPaidInfo;

    @Excel(name = "智点余额")
    private Integer totalCoins;


    //注册渠道
    @Excel(name = "用户来源")
    private String regChannelName;


    /**
     * 注册方式
     */
    @Excel(name = "注册方式",readConverterExp = "0=手机注册,1=电脑注册")
    private Integer platform;



    private String platformSecond;


    @Excel(name = "注册时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;


    /**
     * 最后登录时间
     */
    @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date loginDate;



    @Excel(name = "月登录次数")
    private Integer monthlyLoginCount;

    @Excel(name = "总登录次数")
    private Integer loginCount;

    @Excel(name = "是否完善信息", readConverterExp = "0=未完善,1=已完善")
    private Integer hasComplete;


    /**
     * 用户性别
     */
    @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知")
    private String sex;



    /**
     * 学校或单位
     */
    @Excel(name = "学校或单位")
    private String unit;


    /**
     * 学历  0小学 1中学 2高中 3本科 4研究生 5博士
     * 0: '小学',
     *  1: '初中',
     * 2: '高中',
     *3: '专科',
     * 4: '本科',
     *  5: '硕士',
     * 6: '博士',
     */
    @Excel(name = "学历", readConverterExp = "0=小学,1=初中,2=高中,3=专科,4=本科,5=硕士,6=博士")
    private Integer education;



    @Excel(name = "专业")
    private String speciality;

    /**
     * 需求
     */
    @Excel(name = "需求")
    private String demand;

    @Excel(name = "身份/岗位")
    private String post;


    private String demandName;


    //角色

    private String postName;


    @Excel(name = "了解渠道", readConverterExp = "0=正常注册,2=联通公司,3=抖音,4=微信公众号,5=小红书,6=B站,7正常手机注册")
    private String knowChannel;

    @Excel(name = "保存我的生成数量")
    private String chartConfigCount;

    /**
     * wx用户id
     */
    @Excel(name = "openId")
    private String openId;



    /**
     * 用户邮箱
     */
    @Excel(name = "用户邮箱")
    private String email;



    /**
     * 关注状态   0:关注 1：未关注
     *     @Excel(name = "关注状态", readConverterExp = "0=已关注,1=未关注")
     */
  //  @Excel(name = "关注状态", readConverterExp = "0=已关注,1=未关注")
    private Integer isSubscribe;







    /**
     * 了解渠道
     */

    private String otherKnowChannel;




    private String knowChannelSecond;




    /**
     * 开始时间
     */
    private String startTime;

    /**
     * 结束时间
     */
    private String endTime;


    private List<Long> userIds;

    /**
     * 是否绑定公众号
     */

    private Integer isBind;





    /**
     * 其他来源
     */
    private String otherSource;




    //ip
    private String loginIp;

    //是否完善信息



    private String hasCompleteInfo;




    private LocalDate createdAt;
    private Integer  seatCount;









}
